Hi, I'm Kyle.

I transform real-world data into intelligent systems.

Notice

Focused on academics & career. Commissions closed indefinitely.

5+

Production-ready projects

70,000+

People living easier

3

Core programming languages

5

Years of real world problem solving

Hi, I'm Kyle.

I transform real-world data into intelligent systems.

Notice

Focused on academics & career. Commissions closed indefinitely.

Kyle Dudley

Junior EE Student

Texas A&M University

Hi, I'm Kyle.

I transform real-world data into intelligent systems.

Notice

Focused on academics & career. Commissions closed indefinitely.

Kyle Dudley

Junior EE Student

Texas A&M University

AimAware

AimAware detects aimbot behavior in Minecraft PvP using machine learning models trained on statistical features extracted from rotational and aiming behavior time series data. It combines statistical features derived from player aim patterns with real-time classification on a lightweight inference server. Designed for integration with Spigot servers, AimAware enables scalable, low-latency cheat detection without relying on invasive client-side mods.

LINKS

ROLE

Software Engineer

PROBLEM

In competitive online games, aimbot cheats give players an unfair advantage by automating precise aiming. This makes it difficult for server moderators to identify cheaters without false accusations or intrusive client modifications. Traditional anti-cheat solutions rely on hardcoded heuristics or rule-based systems, which are easy to bypass and often generate false positives. AimAware addresses this problem by using machine learning to detect unnatural aiming behavior based on behavioral time series data, enabling accurate, low-latency aimbot detection directly on the server side. No client side installation or interference necessary.

RESULTS

85% cross-validation accuracy

11 unique aimbot cheats detected

Overall promising results on a small dataset

ROLE

Software Engineer

PROBLEM

In competitive online games, aimbot cheats give players an unfair advantage by automating precise aiming. This makes it difficult for server moderators to identify cheaters without false accusations or intrusive client modifications. Traditional anti-cheat solutions rely on hardcoded heuristics or rule-based systems, which are easy to bypass and often generate false positives. AimAware addresses this problem by using machine learning to detect unnatural aiming behavior based on behavioral time series data, enabling accurate, low-latency aimbot detection directly on the server side. No client side installation or interference necessary.

RESULTS

85% cross-validation accuracy

11 unique aimbot cheats detected

Overall promising results on a small dataset

Why ML beats traditional heuristics

Traditional anti-cheat systems are typically built on human-defined heuristics, arbitrary thresholds, fragile statistical assumptions, and hardcoded definitions about illegitimate behavior. These heuristics are often derived from a narrow set of gameplay observations and rarely hold up across diverse players, varying network conditions, or evolving cheat clients. They're easy to bypass, frequently trigger false positives, and are difficult to maintain as cheats adapt.

AimAware replaces this brittle logic with statistically grounded machine learning. By training on real human and aimbot gameplay data across a wide range of behaviors, the model learns underlying patterns in aiming behavior that are difficult to replicate with hardcoded logic. Instead of guessing thresholds, AimAware optimizes detection using formal learning objectives. The result is more robust, adaptive, and generalizable detection even under high-latency or high-skill gameplay conditions.

Why previous ML approaches failed

Past machine learning efforts in the Minecraft anti-cheat space failed largely due to poor input data quality. Most relied solely on raw rotational values (yaw/pitch deltas) with no context of what the player was aiming at. Without ground-truth alignment between a player's aim and the position of their targets, models lacked the spatial context necessary to distinguish precise aim from legitimate player motion.

AimAware addresses this with two key innovations:

  1. Precise entity tracking – using a modern system to track target positions with sub-block precision

  2. Reverse-engineered client ray tracing – to determine exactly where a player is aiming on a target at each moment

This means AimAware doesn't just know how a player is moving, it knows how that motion relates to actual targets in-game. It can analyze derivatives like tracking error, overshoot, and timing consistency, extracting high-fidelity statistical features (e.g., entropy, skewness, autocorrelation) that meaningfully differentiate human and automated behavior. With this superior data foundation, AimAware overcomes the core limitation that undermined prior ML-based anti-cheat systems.

Deployment and real-world results

AimAware is deployed as a real-time FastAPI inference server, receiving feature-rich JSON payloads from a custom-built Minecraft plugin. The plugin collects rotational and target-tracking statistics in defined time windows and sends them to the server for classification. Inference is performed in under 2.5ms, enabling seamless live monitoring without disrupting gameplay. This lightweight server-client structure makes AimAware suitable for integration into existing infrastructure, and scalable across multiple game instances with minimal compute overhead.

Although the model achieves approximately 85% cross-validation accuracy, AimAware includes a threshold-based stabilization policy that mitigates false positives in live environments. Rather than acting on a single suspicious classification, the plugin maintains a rolling threshold score. Each prediction labelled "SUSPICIOUS" increases the threshold by the confidence value, while "HUMAN" classifications reduce it. Only once this threshold exceeds a preset value (10.0 by default) are mitigations applied. This approach smooths out borderline cases and ensures that classification noise does not lead to premature or unwarranted flagging.


// Threshold-based stabilization policy
switch (prediction) {
    case 0:
      label = "SUSPICIOUS";
      threshold += confidence;
      break;
    case 1:
      label = "HUMAN";
      threshold = Math.max(0, threshold - confidence);
      break;
    default:
      label = "NONE, ERROR";
      break;
}

if (threshold > 10.0) {
  mitigate(); // Mitigations include input rejection and damage reduction.
}

This thresholding mechanism makes AimAware significantly more robust than traditional heuristic-based systems, which often rely on a handful of narrowly defined checks, such as pitch change magnitude or fixed aim delay thresholds. While these heuristics can be very good at catching one specific behavior, they are notoriously fragile outside their intended use case and prone to false positives under conditions like lag, low sensitivity, or unique playstyles. As a result, heuristic anticheats typically require multiple independent aimbot checks, each tuned to catch a narrow slice of cheating behavior.


// A typical heuristic based check
// Note this is check "E", in this particular anti-cheat solution, there are 9 aimbot checks.
@CheckInfo(name = "AimAssist (E)", description = "Checks for a valid sensitivity in the rotation.")
public final class AimAssistE extends Check {

    public AimAssistE(final PlayerData data) {
        super(data);
    }

    @Override
    public void handle(final Packet packet) {
        if (packet.isRotation()) {
            final float deltaPitch = data.getRotationProcessor().getDeltaPitch();
            final float lastDeltaPitch = data.getRotationProcessor().getLastDeltaPitch();

            final long expandedDeltaPitch = (long) (deltaPitch * MathUtil.EXPANDER);
            final long expandedLastDeltaPitch = (long) (lastDeltaPitch * MathUtil.EXPANDER);

            final long gcd = MathUtil.getGcd(expandedDeltaPitch, expandedLastDeltaPitch);

            final boolean exempt = deltaPitch == 0
                    || lastDeltaPitch == 0
                    || isExempt(ExemptType.CINEMATIC);

            debug("gcd=" + gcd + " cinematic=" + isExempt(ExemptType.CINEMATIC) + " buf=" + buffer);

            if (!exempt && gcd < 131072L) {
                if (++buffer > 10) {
                    fail("gcd=" + gcd + " buffer=" + buffer);
                }
            } else {
                buffer = Math.max(0, buffer - 1);
            }
        }
    }
}

In contrast, AimAware learns generalized behavioral patterns across multiple aimbot types, enabling it to act as a standalone detection module. It can identify aimbots with diverse behavior profiles, including those designed to bypass popular heuristics, while maintaining a stable low false-positive rate due to its statistically grounded design and built-in smoothing logic. That said, AimAware is also fully compatible with traditional heuristics and can run in parallel to augment legacy checks, offering the best of both paradigms.