Moonlight AI Settings Overview

How It Works

MoonLightAI processes your game screen in real-time through a multi-stage pipeline. Understanding this pipeline helps you know which settings affect what and in which order.

Capture → Preprocessing → Detection → Filtering → Tracking/Prediction → Movement Calculation → Humanization → Device Output
Stage
What Happens
Configured On

Capture

A frame is grabbed from your capture card, NDI stream, or screen

Settings → Capture

Preprocessing

The frame is cropped, color-converted, and optionally GPU-accelerated

Settings → Capture

Detection

The AI model runs inference to find targets (bounding boxes or keypoints)

Settings → Detection/Model

Filtering

False positives are removed using color, shape, or template matching rules

Settings → Filtering

Tracking

Kalman filters predict target movement and compensate for latency

Settings → Tracking

Movement Calculation

Speed, smoothing, and distance scaling are applied to produce a raw delta

Aim, Flick & Trigger, RCS

Humanization

The raw delta is modified to look like natural human mouse movement

Humanizer

Device Output

The final movement is sent to your mouse via software or hardware device

Settings → Mouse/HID

Key concept — Weapon Classes: A single config file can contain multiple profiles called Weapon Classes (e.g., "Rifles," "Snipers," "Shotguns"). Settings on the Aim, Flick, RCS, and Humanizer pages are stored per-class. Settings on the Settings page are global. When you switch weapon class — manually, by hotkey, or automatically via OCR/Template Matching — all per-class settings update instantly.


Quick Start Guide

If this is your first time launching MoonLightAI, the First-Run Wizard will walk you through the essentials. Here is a summary of the steps:

1. Set Up Capture

Go to Settings → Capture and select your Capture Mode:

  • Capture Card — Select your device, codec, format, and resolution.

  • NDI — Ensure the NDI source is broadcasting on your local network.

  • Screenshot — No configuration needed; suitable for testing only.

Enable Crop for significantly better performance. The system only needs to process the center of your screen.

2. Load a Model

Go to Settings → Detection/Model:

  1. Select a Model File from the dropdown (.onnx or .enc files in the models/ folder).

  2. Set ONNX Provider to gpu (DirectML) for NVIDIA/AMD, or openvino for Intel.

  3. Set Confidence to around 50–60% to start.

  4. Choose the correct Model Type (Object Detection or Pose Estimation) to match your model.

3. Verify Detection

  1. Set Select Visual Type to "Debug - Crop Only" on the Capture tab.

  2. Press Start in the sidebar.

  3. You should see bounding boxes drawn around detected targets in the debug window.

  4. If nothing appears, lower Confidence or check your Capture settings.

4. Configure Aim

Go to the Aim page:

  1. Enable Aim Enable.

  2. Set your Aim Key (e.g., Right Click).

  3. Choose an Aim Type (Aim V2 is recommended for new users).

  4. Set Smooth X / Y to around 25–35 as a starting point.

  5. Set Aim FOV.

5. Test and Tune

Enter a game, hold your aim key, and observe the behavior. From here:

  • If aim feels too fast/snappy → increase Smooth X/Y values.

  • If aim feels too slow/floaty → decrease Smooth X/Y values.

  • If aim is jittery → increase Tracking Deadzone.


Aim Page

The Aim page is the primary interface for configuring assistive pointing behavior. It is divided into three sections: Global Settings, Targeting & Position, and a dynamic Aim Controls panel that changes based on the selected algorithm.

Global Aim Settings

These settings apply universally regardless of the selected aim algorithm.

Activation Controls

Control
Widget
Description

Aim Key

Multi-select dropdown

Bind one or more keys (Left Click, Right Click, Side Buttons) to activate the aim function. Multiple keys can be active simultaneously.

Aim Enable

Checkbox

Master toggle for the entire aim system. All other settings are ignored when this is off.

Timing & Limitations

Control
Widget
Description

Reaction Time

Slider (ms)

Artificial delay between key press and the start of aim movement. Simulates human reaction speed. Higher values are safer but feel less responsive.

Max Aim Time

Checkbox + Slider (s)

When enabled, sets a hard time limit for how long aim assist stays active per key press. Prevents the system from tracking a target for suspicious durations.

Recommended starting values: Reaction Time 80–150 ms. Max Aim Time enabled, 2–4 seconds.

Targeting & Position

Defines the search area and static offsets applied to the aim point.

Field of View (FOV)

Control
Widget
Description

Aim FOV

Slider

Radius of the circular search area around your crosshair, in pixels. Only targets inside this circle are tracked. Larger values find targets further from center but feel less natural.

FOV Scale

Slider

Multiplier that adjusts the FOV radius relative to your screen resolution. Use this to keep FOV behavior consistent across different monitor sizes.

Dynamic FOV

Control
Widget
Description

Enable

Checkbox

Toggles dynamic FOV resizing. When enabled, the search area shrinks and expands based on tracking conditions or target distance.

Min FOV

Slider

Lower bound of the dynamic FOV range. The search circle will never shrink below this value.

Max FOV

Slider

Upper bound of the dynamic FOV range. The search circle will never grow above this value.

Offsets

Control
Widget
Description

X Offset

Slider (px)

Fixed horizontal pixel adjustment to the aim point. Positive values shift right; negative values shift left.

Y Offset

Slider (px)

Fixed vertical pixel adjustment. Commonly used for manual recoil compensation or aiming at a specific body height (e.g., head vs. chest).

Aim Controls

This panel changes its available settings based on the Aim Type selected in the header.

Header Selection

Control
Widget
Description

Aim Type

Dropdown

Selects the movement algorithm: Legacy, Aim V2, or GAN. Each mode exposes different sliders below.

Aim Mode

Dropdown

Determines key behavior — Hold (active while key is held) or Toggle (press to activate, press again to deactivate).

Legacy Mode

A simple linear speed/acceleration algorithm. Best for users who want direct, predictable control.

Control
Widget
Description

X Speed

Slider

Base horizontal tracking speed.

Y Speed

Slider

Base vertical tracking speed.

Speed Modifier 1

Slider

Secondary speed adjustment for fine-tuning acceleration curves.

Speed Modifier 2

Slider

Tertiary speed adjustment for specific zone behaviors.

Aim V2 Mode

Advanced smoothing with distance-aware scaling. Recommended for most users.

Control
Widget
Description

Smooth X

Slider

Horizontal smoothing factor. Higher values = slower, smoother tracking. Lower values = snappier movement.

Smooth Y

Slider

Vertical smoothing factor. Independent from X to allow different horizontal/vertical feel.

Distance Scale Factor

Slider

Adjusts how smoothing changes with target distance. Lower values make aim faster up close and slower at range. Higher values keep speed consistent regardless of distance.

Smooth Modifiers

List editor

Define custom smoothing zones — specific smoothing values that trigger only within certain FOV ranges. For example: stronger smoothing when the target is within 50px, lighter smoothing beyond 200px.

Note: Distance Scale Factor only functions when Legacy Distance Smoothing is enabled in Settings → Mouse/HID. See Sensitivity Normalization for details.

GAN Mode

Uses a trained neural network to generate human-like movement trajectories instead of mathematical curves.

Control
Widget
Description

GAN Speed

Slider

Overall speed of the neural network's path generation.

GAN Humanization

Slider

Amount of noise/imperfection added to the path to mimic human error.

GAN Smoothness

Slider

Curvature of the generated trajectory. Higher values produce rounder, more flowing paths.

GAN Overshoot %

Slider (%)

Probability that the aim intentionally overshoots the target before correcting back. Adds realism to flick-like motions.

GAN Model

Dropdown

Selects which trained model file (.pth or .onnx) to use. See ML Mouse Model Tab for training your own.


Flick & Trigger Page

This page combines configuration for two distinct behaviors: Flick (rapid target acquisition) and Trigger (automated firing). The page is divided into Flick Settings and Trigger Settings.

Flick Settings

Flick is designed for faster, snap-like movements compared to the smoother tracking of the Aim page. Use it for quick target switches or one-shot weapons.

Targeting & Position

Control
Widget
Description

Flick FOV

Slider

Radius of the search circle. Typically set larger than Aim FOV to acquire targets further from the crosshair.

X Offset

Slider (px)

Horizontal pixel adjustment for the final flick point.

Y Offset

Slider (px)

Vertical pixel adjustment. Often used to bias toward headshots.

Flick Controls

Activation:

Control
Widget
Description

Flick Enable

Checkbox

Master toggle for the flick system.

Flick Key

Dropdown

Selects the activation key (Right Click, Side Buttons, etc.).

Motion Settings:

Control
Widget
Description

Reaction Time

Slider (ms)

Delay before the flick movement begins.

Distance Scale Factor

Slider

Adjusts smoothing based on target distance. Same behavior as Aim V2's Distance Scale Factor.

Smooth X

Slider

Horizontal smoothing. Lower = faster, snappier flicks. Higher = more controlled.

Smooth Y

Slider

Vertical smoothing. Independent from X.

Smooth Modifiers

List editor

Custom smoothing zones based on FOV ranges. Same concept as Aim V2's Smooth Modifiers.

Trigger Settings

The Triggerbot automatically fires when a target enters the crosshair or a defined region.

Trigger Controls

Activation:

Control
Widget
Description

Trigger Enable

Checkbox

Master toggle for auto-fire.

Trigger Key

Dropdown

Key that must be held for the triggerbot to be active.

Detection & Timing:

Control
Widget
Description

Trigger Scale

Slider

Adjusts the effective detection zone tightness. Lower values require the crosshair to be more precisely on-target before firing.

1st Shot Delay

Slider (ms)

Delay before the first shot after a target is detected. Simulates human reaction time.

Multi-Shot Delay

Slider (ms)

Delay between subsequent shots. Use for semi-automatic weapons or tap-fire control.

Recommended starting values: Trigger Scale 0.3–0.5. 1st Shot Delay 100–200 ms. Multi-Shot Delay 50–100 ms.


Recoil Control System (RCS) Page

The RCS page manages weapon recoil mitigation. Unlike other pages, it provides direct access to control logic and specialized modes for handling recoil patterns. The page is divided into four sections: RCS Controls, Mode Settings, Pattern Settings, and Pattern Visualization.

RCS Controls

Core activation and timing for the generic pull-down system.

Control
Widget
Description

RCS Enable

Checkbox

Master switch for recoil control.

RCS Strength

Slider

Vertical pull-down force to counteract muzzle rise. Higher values = stronger downward compensation for high-recoil weapons.

RCS Activation Delay

Slider (ms)

Pause after firing before recoil control engages. Useful for weapons with a stable first shot before the recoil pattern begins.

Max Time

Slider (ms)

Maximum duration for RCS during a continuous spray. Prevents indefinite pull-down if the fire button is held too long.

RCS Mode Settings

Determines when and how recoil control is applied.

Control
Widget
Description

RCS Activation Mode

Dropdown

See options below.

Enemy Detection Threshold

Slider (0–100%)

Only visible in "Enemy Detected" mode. Defines how centered the crosshair must be on the target for RCS to engage. Lower = stricter (must be dead center). Higher = more lenient.

Activation Mode options:

Mode
Behavior

Always Active

RCS runs whenever the fire key is held, regardless of whether a target is present.

Enemy Detected

RCS activates only when a valid enemy is identified by the AI.

Within FOV

RCS activates only when an enemy is inside the defined FOV radius.

Pattern Based

Disables generic pull-down. Uses a specific CSV pattern file instead (enables Pattern Settings below).

Pattern Settings

Visible only when RCS Activation Mode is set to Pattern Based. Configures file-based recoil compensation that follows specific weapon spray patterns rather than just pulling down.

Control
Widget
Description

RCS Pattern File

Text field + Browse

Select a .csv file containing relative X/Y coordinates and timing data for a specific weapon's recoil pattern.

Pattern Randomness

Slider

Injects random pixel noise into the pattern to prevent perfectly static, robotic movement.

Pattern Interpolation

Slider

Adds intermediate smoothing points between pattern steps, creating fluid motion instead of jumping between coordinates.

Pattern Sensitivity

Slider

Scales the entire pattern's magnitude. Adjusts a single pattern file to work with different in-game sensitivities or FOV settings.

Require Enemy Visible

Checkbox

When enabled, pattern execution pauses if no enemy is detected. Prevents the cursor from moving erratically when firing at walls.

Pattern CSV Format

Pattern files are plain CSV with no header row. Each row represents one bullet in the spray sequence.

Column
Type
Description

dx

Float

Horizontal pixel offset for this bullet (incremental, not cumulative). Positive = right, negative = left.

dy

Float

Vertical pixel offset for this bullet (incremental, not cumulative). The system negates this value at runtime, so a negative dy in the CSV produces a downward pull.

delay_ms

Float/Int

Milliseconds to wait before advancing to the next bullet step. Typically matches the weapon's fire rate.

Example — AK-47 pattern (first 6 bullets):

Example — simple vertical pull test:

How values are scaled:

CSV values go through two stages of scaling before reaching the mouse:

  1. Load time: value × 2.45 / game_sensitivity — the 2.45 factor converts from artanis-rcs units.

  2. Runtime: scaled_value × Pattern Sensitivity slider — the UI slider (0.1–2.0) applies an additional multiplier.

Use the Pattern Sensitivity slider to adjust a single CSV file to work across different in-game sensitivities without editing the file.

Behavior notes:

  • Empty lines are skipped.

  • Lines with fewer than 3 columns are skipped.

  • Invalid numbers are skipped (no crash).

  • If the spray lasts longer than the pattern, the last row repeats indefinitely.

  • Files are read with UTF-8 encoding (BOM-safe).

  • Pattern files are stored in the rcs_patterns/ folder.

Pattern Visualization

Visible only in Pattern Based mode. Provides real-time visual feedback on the loaded pattern.

Element
Description

Full Pattern View

Graph showing the complete static path of the loaded CSV pattern.

Live Pattern View

Dynamic graph showing cursor position along the pattern path in real-time while firing.

Bullets

Total number of steps in the loaded pattern.

Current

Step index currently being executed.

Active

Whether the RCS system is currently engaging (Yes/No).

Reload Pattern

Forces a reload of the CSV file from disk. Useful after editing the file externally.


Humanizer Page

The Humanizer page masks robotic movement patterns to make aim behavior indistinguishable from natural human input. It uses a tab system with independent configurations for Aim and Flick behaviors.

Humanizer Tabs

Tab
Controls humanization for...

Aim Humanizer

Standard tracking/smoothing (Aim V2 / Legacy)

Flick Humanizer

Rapid target acquisition (Flick / Trigger)

Each tab contains identical controls described below. Tune them independently — tracking and flicking have very different movement characteristics.

Humanization Mode

Control
Widget
Description

Enable

Checkbox

Master toggle for humanization on this tab (Aim or Flick).

Mode

Radio buttons

Traditional Humanization — software-based algorithms (WindMouse, Momentum, Entropy). MAKU Hardware Humanization — offloads to hardware emulation using geometric curves.

MAKU Hardware Controls

Note: Not available until a future MAKCU firmware update.

Visible only when "MAKU Hardware Humanization" is selected. Uses geometric curves to create fluid, non-linear paths.

Control
Widget
Description

Movement Type

Dropdown

Straight (2-param) — direct movement. Segmented (3-param) — multiple linear segments. Quadratic Bézier (5-param) — one control point, smooth simple curve. Cubic Bézier (7-param) — two control points, complex S-curves or arcs.

Segments

Slider

Resolution/smoothness of the curve. More segments = smoother path but more processing.

CX1 / CY1

Sliders

Coordinates for the first curve control point.

CX2 / CY2

Sliders

Coordinates for the second control point (Cubic mode only).

Traditional Humanization Controls

Visible only when "Traditional Humanization" is selected. Divided into several specialized subsystems.

WindMouse Algorithm

Simulates mouse movement as a physical object affected by gravity and wind forces.

Control
Widget
Description

Enable WindMouse

Checkbox

Toggles this specific algorithm.

Gravity (Min/Max)

Sliders

Force pulling the cursor toward the target. Lower = wider, arcing paths. Higher = snappier, straighter lines.

Wind (Min/Max)

Sliders

Chaotic side-to-side force that adds wobble/imperfection to the path.

Speed (Min/Max)

Sliders

Velocity range of movement steps.

Damp (Min/Max)

Sliders

Braking force that reduces wind as the cursor approaches the target. Ensures the cursor settles onto the target instead of oscillating.

Advanced Humanization (Always-On)

Control
Widget
Description

Momentum Tracking

Checkbox

Simulates physical mouse weight. Adds acceleration and deceleration phases so movement doesn't start/stop instantly.

Movement Clamping

Checkbox

Limits maximum pixels moved in a single frame (typically ±14px). Prevents superhuman instantaneous snaps.

Stop/Pause System

Randomly introduces micro-pauses to simulate repositioning or hesitation.

Control
Widget
Description

Chance

Slider (%)

Probability of a pause occurring per movement cycle.

Min Pause

Slider (ms)

Minimum pause duration.

Max Pause

Slider (ms)

Maximum pause duration.

Pattern Masking

Adds tiny, imperceptible jitter to break up mathematical linearity in small movements.

Control
Widget
Description

Intensity

Slider

Strength of the micro-adjustments.

Scale

Slider

Global multiplier for all humanization variance.

Sub-Movement Decomposition

Breaks long movements into smaller chunks separated by micro-delays, rather than one continuous slide.

Control
Widget
Description

Enable

Checkbox

Toggles sub-movement decomposition.

Chunk Size

Slider

Size of each sub-movement segment.

Proximity Pause

Triggers hesitation when the crosshair gets very close to the target, simulating a user confirming their aim.

Control
Widget
Description

Threshold

Slider (px)

Distance from target to trigger the pause.

Cooldown

Slider (ms)

Minimum time before this can trigger again.

Easing System

Controls acceleration curves for starting and stopping movements around pauses.

Control
Widget
Description

Ease-Out

Slider (ms)

Deceleration duration before a pause.

Ease-In

Slider (ms)

Acceleration duration after a pause.

Curve

Slider

Power of the easing curve. 1.0 = Linear, 2.0 = Quadratic, 3.0 = Cubic. Higher values create more pronounced acceleration/deceleration.

Momentum Tracking System (Physics-Based)

Fine-tuning for the momentum physics engine.

Control
Widget
Description

Decay

Slider

How fast momentum bleeds off (friction). Higher = stops faster.

Lead Bias

Slider

Forward prediction multiplier. Higher values make the system aim slightly ahead of where it thinks the target is going.

Deadzone

Slider (px)

Minimum error required before momentum corrections are applied. Prevents micro-corrections on already-accurate aim.

Correction Strength

Slider

How aggressively the system corrects overshoot/undershoot errors.

Entropy-Aware Humanization

Features specifically designed to defeat statistical analysis detection.

Control
Widget
Description

Speed Variance

Slider

Modulates movement speed with smooth noise to increase the Speed CV (Coefficient of Variation) metric. Makes speed less constant and more human-like.

Path Curvature

Slider

Adds sinusoidal waviness perpendicular to the movement path. Prevents perfectly straight aim lines.

Endpoint Settling

Slider

Adds micro-oscillations at the target point instead of stopping instantly. Simulates a human stabilizing their hand after a flick.

Tip: Use the Entropy Analyzer (Settings → Mouse/HID) to see real-time metrics while tuning these values.


Settings Page

The Settings page is divided into multiple sub-tabs covering hardware, detection, filtering, tracking, input devices, configuration management, and ML model training.


Capture Tab

Handles video input, image acquisition, and hardware acceleration.

Core Capture Settings

Control
Widget
Description

Capture Mode

Dropdown

Capture Card — physical hardware device. NDI / NDI-V2 — network video (dual-PC setups). Screenshot — Windows API screen grab (slow, for testing). UDP — custom UDP socket (currently non-functional).

Enable Crop

Checkbox

Crops the input to a center region instead of processing the full frame. Significantly improves performance.

Debug Size

Text field + Apply

Sets the size of the debug overlay window.

Select Visual Type

Dropdown

Debug - Crop Only — shows the cropped processing region with detections. Debug - Full Screen — shows the entire captured frame. Debug - Weapon Detection ROI — specialized view for OCR. None — disables visual feedback for maximum performance.

Debug Performance

Control
Widget
Description

Display Scale

Slider (0.25–1.0)

Downscales the debug window resolution. 0.5 renders at 50% resolution. Does not affect detection, only the viewer.

Max FPS

Slider (15–240)

Limits debug window refresh rate. Set to 30–60 to save resources. This does not limit detection FPS.

Hardware Source Settings

Visible only when Capture Mode is set to Capture Card.

Control
Widget
Description

Select Codec

Dropdown

Windows API for the camera interface. Direct Show — more compatible. MSMF — newer but generally worse compatibility.

Capture Source

Dropdown

Lists all connected video input devices (e.g., "Cam Link 4K").

Capture Format

Dropdown

Raw data format: YUY2, NV12, MJPG, etc. Match this to your capture card's supported formats.

Capture Resolution

Text fields (W × H)

Manually sets capture resolution (e.g., 1920 × 1080).

Max Capture FPS

Text field

Target framerate for the capture loop (e.g., 240). Prevents the capture thread from consuming 100% of a CPU core.

UDP Configuration

Note: UDP capture mode is currently non-functional.

Visible only when Capture Mode is set to UDP.

Control
Widget
Description

UDP URL

Text field

Network address to listen on (e.g., udp://127.0.0.1:1234).

Use MJPEG UDP

Checkbox

Switches decoding from H.264 to MJPEG.

H.264 Decode Method

Dropdown

Hardware decoder: Auto, NVDEC (NVIDIA), QSV (Intel), AMF (AMD), CPU. Match to your GPU for lowest latency.

Frame Dropping

Dropdown

Disabled (Smooth) — processes all frames. Balanced — moderate dropping. Aggressive (Low Latency) — drops old frames to always process the newest data.

Debug Capture

Checkbox

Enables verbose logging for diagnosing stream issues.

OpenCL GPU Acceleration

Control
Widget
Description

Enable OpenCL

Checkbox

Offloads color space conversion (YUV → RGB) from CPU to GPU.

Performance Mode

Dropdown

Force CPU — maximum inference speed (avoids PCIe overhead). Auto — uses GPU if efficient. Force GPU — strictly uses GPU acceleration.

Early Initialization

Checkbox

Pre-loads OpenCL contexts at startup. Increases launch time but prevents lag spikes when detection first starts.

Status

Label

Displays current acceleration state (e.g., "GPU Acceleration Active").


Detection / Model Tab

Configures the neural network and inference engine that powers object detection.

Backend & Model

Control
Widget
Description

Backend

Dropdown

Inference framework. Defaults to ONNX (Open Neural Network Exchange).

ONNX Provider

Dropdown

gpu — uses DirectML (Windows). openvino — uses Intel OpenVINO (works for AMD CPUs too).

OpenVINO Device

Dropdown

Only visible with openvino provider. Select hardware: AUTO, CPU, GPU, NPU.

ONNX Threads

Dropdown

CPU threads dedicated to ONNX runtime. Tuning this balances CPU load vs. detection speed.

Model File

Dropdown

The AI model to load (.onnx, .enc, or .xml files from models/). Determines what the system detects.

Confidence

Dropdown (1–99%)

Minimum confidence threshold for a detection to be valid. Higher = fewer false positives but may miss targets. Lower = catches more but risks false detections.

Model Settings

Control
Widget
Description

Model Type

Dropdown

Object Detection — standard bounding boxes. Pose Estimation — keypoint detection (head, neck, shoulders, etc.). Requires a pose model.

Async Inference Enable

Checkbox

Enabled — runs inference in parallel with capture. Higher FPS but slightly more latency. Disabled — synchronous, lowest latency (frame-by-frame).

Target Keypoints

Dropdown

Only visible in Pose Estimation mode. Select body part to target: Head, Neck, Chest, or All Keypoints.

Detection Filtering

Control
Widget
Description

Bone Selection

Dropdown

Nearest Bone (Simple/Advanced) — closest bone to crosshair. Head/Chest — forced area targeting. Pose Estimation — uses keypoint data.

Class Filter 0–3

Checkboxes

Enable specific model class IDs to prioritize one class over another.

Disable Class 0–3

Checkboxes

Explicitly ignore specific class IDs. The system will not lock onto disabled classes even if detected.


Filtering Tab

Advanced logic to ignore specific targets or false positives using computer vision techniques.

Enemy Color Filter

High-level filter for games with character outlines or team colors.

Control
Widget
Description

Enemy Color Filter Enable

Checkbox

Toggles color-based validation.

Color Selection

Dropdown

Color range to look for on targets: Purple, Pink, Yellow, Red (with variants). Targets without this color are ignored.

Color + Shape Ignore Filter

Define rules to ignore detections based on geometric properties or internal colors. Useful for filtering teammates, dead bodies, or map objects.

Control
Widget
Description

Enable

Checkbox

Master toggle for shape filtering.

Show Debug Overlay

Checkbox

Draws visualization on the debug screen showing search regions and detected shapes.

Decay

Spinbox (ms)

How long a target remains flagged as "ignore" once detected. Prevents flickering between valid/invalid states.

Filter Rules List

List + Add/Edit/Remove

Each rule can combine: Color (RGB + tolerance), Shape (Triangle, Circle, Diamond, Arrow), Rotation (specific angles), Dimensions (min/max area, aspect ratio), Region (Inside, Above, Below, Custom Offset relative to the bounding box).

Template Matching Ignore Filter

Ignores targets if a specific image (template) is found on or near them. Highly effective for filtering UI elements like "Revive" icons, nameplates, or status markers.

Control
Widget
Description

Enable

Checkbox

Master toggle for template matching.

Template Rules List

List + Add/Edit/Remove

Each rule includes the settings below.

Per-rule settings:

Setting
Description

Template Image

The .png or .jpg icon to search for.

Preprocessing Pipeline

Basic: Grayscale, Invert, Crop. Enhancement: CLAHE (contrast), Sharpen, Bilateral Filter. Noise Removal: Gaussian Blur, Morphology (Erode/Dilate), Small Blob removal. Edge Detection: Canny edge extraction for shape-based matching.

Threshold

How close the match must be (0–100%).

Method

Matching algorithm: Correlation, Squared Difference, etc.

Multi-scale

Checks multiple sizes of the template to handle distance scaling.

Search Region

Where to look relative to the detection box (e.g., "Above BBox" for health bar icons).

Live Preview

Split-screen view showing the original image and processed result to verify settings work.


Tracking Tab

Controls how aim assist interprets target movement, stabilizes aiming, and predicts future position.

Basic Tracking

Control
Widget
Description

Min Smoothing Clamp

Slider

Hard lower limit on smoothing values. Prevents dynamic algorithms from reducing smoothing to near zero, which would cause wild flicks.

Tracking Deadzone

Slider (px)

Small radius around the target center where no adjustments are made. Prevents jitter when the crosshair is already on target.

Extra Smoothing

Slider

Additional uniform smoothing layer on top of the base calculation. Useful for games with erratic mouse input.

Recommended starting values: Min Smoothing Clamp 3–5. Tracking Deadzone 2–4 px. Extra Smoothing 0–2.

Prediction System

The primary predictive aiming system. Uses a Kalman filter to estimate where a moving target will be in the future, compensating for system latency. All internal filter parameters (process noise, measurement noise, velocity smoothing, etc.) are derived automatically from the Responsiveness meta-slider.

Control
Widget
Description

Enable Predictive Aim

Checkbox

Master toggle for the prediction system. When disabled, no lead/prediction is applied.

Show Kalman Debug Info

Checkbox

Prints Kalman filter state (position, velocity, covariance) to the console. Only visible when prediction is enabled.

Preset

Dropdown

Quick-apply a prediction tuning profile. Manually adjusting any slider switches to "Custom."

Sliders:

Control
Range
Description

Aim Ahead (ms)

0–200 ms

How far ahead to lead the target. 0 = no lead, 100 = 100ms lead. This is the single most important prediction parameter — it directly controls how much the system compensates for your total pipeline latency.

Responsiveness

0–200

Single meta-slider controlling all internal filter parameters. 0 = Smooth (slow tracking, heavy smoothing). 100 = Snappy (fast tracking, minimal smoothing). 200 = Ultra-Snappy (most aggressive tracking). This drives process noise, measurement noise, velocity smoothing, and other values automatically.

Lock Delay (ms)

0–500 ms

How long to track a target before prediction kicks in. Longer = more cautious startup. Shorter = faster prediction. 0 = instant prediction with no warmup.

Tracking Zone (px)

5–50 px

How close the crosshair must be to the target for lock to activate. Smaller = stricter lock requirement. Larger = more forgiving acquisition.

Y Prediction (%)

0–100%

How much vertical prediction to apply. 0% = no vertical prediction. 100% = full vertical prediction. Lower values prevent upward drift toward the head on horizontally-moving targets.

Optional:

Control
Widget
Description

Velocity Aim Ahead

Checkbox + Slider (0–200%)

Scales aim-ahead time by target velocity. Faster targets get more lead, slower targets get less. The slider controls intensity — 100% = standard scaling, 200% = aggressive scaling.

Tuning guide: Start with Aim Ahead at 5ms and Responsiveness at 45. If tracking feels laggy, increase Responsiveness. If aim leads too far ahead of the target, reduce Aim Ahead. Set Lock Delay to 100–200ms to prevent prediction from engaging on brief flick-overs. Keep Y Prediction at 20–30% unless targets move vertically often.

Latency & Prediction Debug Info

Real-time performance readout panel.

Metric
Description

Capture Latency

Time for the image to reach the software.

Processing Latency

Time for AI inference and logic.

Total Latency

Sum of all delays in the pipeline.

Velocity

Current calculated target velocity (X/Y).

Prediction Status

Whether prediction is active or warming up.

Samples

Number of valid data points collected for the current track.


Mouse / HID Tab

Hardware configuration center. Manages how the software communicates with your mouse, handles input blocking, and normalizes sensitivity.

Device Selection

Control
Widget
Description

Device

Dropdown

Moonlink — software-based mouse simulation, no hardware needed. KMBox — hardware mouse spoofing device. MAKCU / Ferrum — advanced hardware spoofing devices.

COM Port

Dropdown

Only visible for hardware devices. Select the USB port your device is connected to.

Hardware setup: After connecting your device, select the correct COM Port from the dropdown. If the device isn't listed, check Device Manager to confirm the port number and that drivers are installed.

Input Masking

Intercepts or blocks physical mouse clicks to prevent conflict between your input and the AI.

Control
Widget
Description

Mouse 1 / 2 / 4 / 5

Checkboxes

When checked, the software blocks the physical input of that button while the AI is active. Prevents "fighting" the system.

M1 Block Threshold

Slider (%)

Only visible when Mouse 1 is checked. Defines a safety zone as a percentage of the target's bounding box width. Lower = stricter, aim must be very close to center before your click registers. Higher = more lenient, allows firing near the edge.

Debug & Analysis

Control
Widget
Description

Show Button States Debug

Checkbox

Only visible for MAKCU/Ferrum devices. Displays internal hardware button state to verify input masking works on the physical device.

Enable Entropy Analyzer

Checkbox

Opens the Entropy Analyzer panel. See Entropy Analyzer for details.

Sensitivity Normalization

Ensures aim settings feel consistent regardless of mouse DPI or in-game sensitivity.

Control
Widget
Description

Enable Sensitivity Normalization

Checkbox

Toggles normalization. When enabled, Speed 10 feels the same at 800 DPI as at 1600 DPI.

DPI Value

Input field

Your physical mouse DPI (e.g., 800, 1600).

In-Game Sens

Input field

Your actual in-game sensitivity value.

Reference Sens

Input field

Baseline value used by config creators. The software calculates a multiplier to match the creator's feel on your setup.

Legacy Distance Smoothing

Checkbox

Disabled (Recommended) — newer logic: aim is slower/precise at close range, faster at long range. Enabled — old behavior: slower at range, faster up close.

Cross-reference: The Aim V2 Distance Scale Factor slider only functions when Legacy Distance Smoothing is enabled.

Delays & Sensitivity

Control
Widget
Description

Device Delay

Slider (ms)

Delay added to hardware device commands. Increase to fix connection instability or "ghosty" movement.

Aim Delay

Slider (ms)

Artificial latency added to Aim commands.

Flick Delay

Slider (ms)

Artificial latency added to Flick commands.

RCS Delay

Slider (ms)

Artificial latency added to Recoil commands.

Sens Multiplier

Slider

Global multiplier for all mouse output. 1.0 = standard. < 1.0 = reduces speed. > 1.0 = amplifies speed.


Config Tab

Administrative hub for file management, profile switching, and automatic weapon detection. Divided into three sub-tabs: Settings, OCR, and Template Matching.

Settings Sub-Tab

Profile Management

Control
Widget
Description

Config File

Dropdown

Select the active JSON configuration file.

Refresh List

Button

Reloads the file list from the configs/ folder.

Import Config

Button

Download configurations from a linked Discord channel.

Export Config

Button

Upload your current config and AI model to Discord for sharing.

Duplicate Config

Button

Creates a copy of the current config with a new name.

Delete Config

Button

Permanently removes the selected config file.

Weapon Class Management

Control
Widget
Description

Weapon Class

Dropdown

Manually switches the active profile. All settings on Aim, Flick, and RCS pages update instantly.

Manage

Button

Opens a window to create, rename, or delete weapon classes.

Hotkey

Input field + Set/Clear

Bind a key (e.g., F3) to cycle through weapon classes in-game.

OCR Sub-Tab (Text Recognition)

Uses Optical Character Recognition to read text on screen (e.g., weapon name in the HUD) and automatically switch Weapon Class.

OCR Engine

Control
Widget
Description

Enable Auto Weapon Detection

Checkbox

Master switch for text recognition.

OCR Engine

Dropdown

Recognition library (default: EasyOCR).

ROI Configuration (Region of Interest)

Defines where on screen the system looks for text.

Control
Widget
Description

ROI Position (X / Y)

Sliders

Top-left corner coordinates of the search box.

ROI Size (W / H)

Sliders

Width and height of the search box.

Live Preview

Control
Widget
Description

Start/Stop Preview

Button

Shows a real-time feed of the capture area.

Green Box

Visual

Indicates the current scan region.

Zoom

Dropdown

Zoom into specific corners/center to position the ROI precisely over the weapon name.

Refresh/Scale

Sliders

Adjust preview framerate and quality.

Preprocessing & Detection

Control
Widget
Description

Grayscale / Threshold

Sliders

Filters to make text stand out against the game background.

Contrast

Slider

Separation between text and background.

Detection Interval

Slider (ms)

How often the system scans. Higher values save CPU.

Similarity Threshold

Slider (0–100%)

How close detected text must match your keyword. Lower allows fuzzy matching (e.g., "Vanda1" → "Vandal").

OCR Languages

Dropdown

Language packs for reading text.

Weapon Text Mappings

Control
Widget
Description

Mappings Table

List

Keyword — text to look for (e.g., "AK-47"). Target Class — profile to switch to (e.g., "Rifles").

Test OCR Mapping

Button

Type a phrase to test if it triggers a match against current rules.

Template Matching Sub-Tab (Icon Recognition)

Alternative to OCR. Looks for specific images (weapon icons in HUD/killfeed) to trigger profile switches.

Template Settings

Control
Widget
Description

Enable Template Matching

Checkbox

Master switch for icon recognition.

Check Interval

Slider (ms)

How frequently the system scans for images.

Switch Cooldown

Slider (ms)

Minimum wait before switching classes again. Prevents rapid flickering.

Live Debug Status

Metric
Description

Status

Active state and number of loaded rules.

Last Match

Name of last detected icon and confidence score.

Checks/Matches

Activity counters.

Template Rules

Control
Widget
Description

Add Rule

Button

Opens dialog: Template Image (browse for .png/.jpg), Target Weapon Class, Search Region (e.g., "Bottom Right"), Match Threshold (0.80+ recommended), Preprocessing (Blur, Edges, Invert).

Edit/Remove

Buttons

Modify or delete existing rules.

Test Selected

Button

Verifies if the selected rule matches the current screen.


ML Mouse Model Tab

Train a custom neural network that mimics your specific mouse movement style. Instead of generic humanization algorithms, this system learns from your actual hand movements.

Training Data Collection

Record your natural mouse movements to build a dataset.

Control
Widget
Description

Status

Label

Current state: "Not Recording" or "Recording - Move your mouse naturally!"

Sensitivity

Slider

Match to your in-game sensitivity so the AI learns correct speed/distance relationships.

Start Recording

Button

Begins capturing mouse data. Move your mouse naturally — flick, track, stop — as if aiming at targets.

Stop Recording

Button

Saves the captured session to the database.

Live Stats

Label

Real-time feedback: movements captured, current speed, movement classification.

Tip: Record at least 5–10 sessions of 30+ seconds each. Vary your movements — track slow targets, flick to distant ones, make small corrections. The more diverse your data, the better the model.

Training Data Summary

Element
Description

Total Sessions

Number of saved recording sessions.

Recent Sessions

Details on the last few recordings.

Metrics

Path efficiency (straightness), jitter (shakiness), overshoots.

Refresh Summary

Updates stats with the latest data.

Model Training

Control
Widget
Description

Model Architecture

Dropdown

VAE (Original) — balanced quality/performance. GRU (Fast) — faster processing, ideal for older PCs. Transformer (Best) — highest quality, recommended for high-end PCs.

Training Epochs

Spinbox

How many passes the AI makes over your data. 200–500 recommended. Higher = more accurate but longer training.

Train Model from Data

Button

Starts training. Generates a .pth or .onnx model file.

Load Existing Model

Button

Re-loads the last used model into memory.

Model Info

Label

Architecture type and Validation Loss (lower = more accurate mimicry).

Model Management

Control
Widget
Description

Available Models

Dropdown

Lists all trained models with name, type, and accuracy score.

Load Selected

Button

Activates the chosen model.

Save As

Button

Creates a copy with a new name.

Rename

Button

Changes the model's filename.

Delete

Button

Permanently removes the model file.

Data Management

Control
Widget
Description

Export Training Data

Button

Saves raw movement dataset to a file for backup or sharing.

Clear All Data

Button

Wipes all recorded sessions. Use when starting fresh with a different aiming style.


Entropy Analyzer

The Entropy Analyzer is a real-time diagnostic panel that measures the statistical "humanness" of your mouse output. It is enabled via the checkbox in Settings → Mouse/HID → Debug & Analysis.

What It Measures

Metric
What It Means
Target Range

Speed CV

Coefficient of Variation of movement speed. Low values indicate constant, robotic speed.

0.4–0.8

Path Linearity

How straight the cursor path is. 1.0 = perfectly straight (robotic).

0.6–0.85

Acceleration Entropy

Randomness in acceleration changes. Low = predictable ramp-up/down.

> 2.0

Pause Distribution

How natural the pattern of micro-pauses is.

Varies

Direction Change Rate

Frequency of small direction adjustments during movement.

> 0.1

How to Use It

  1. Enable the Entropy Analyzer.

  2. Start an aim session and observe the real-time metrics.

  3. If any metric is flagged red or falls outside the target range, adjust the corresponding Humanizer setting:

    • Low Speed CV → increase Speed Variance (Entropy-Aware Humanization).

    • High Path Linearity → increase Path Curvature.

    • Low Acceleration Entropy → increase Momentum Tracking decay or enable WindMouse.

    • No pauses → enable Stop/Pause System and increase Chance.

  4. Re-test until all metrics fall within acceptable ranges.


Debug Overlay

When a visual debug type is selected in Settings → Capture → Select Visual Type, an overlay window shows real-time detection information.

Visual Elements

Element
Color
Meaning

Bounding Boxes

Green/Red

Detected targets. Green = valid target. Red = filtered/ignored.

FOV Circle

White/Blue

The current aim FOV search area, centered on your crosshair.

Prediction Vector

Yellow arrow

Direction and magnitude of Kalman prediction (where the system thinks the target is heading).

Confidence Label

White text

Detection confidence percentage displayed above each bounding box.

Keypoint Skeleton

Colored dots/lines

Visible in Pose Estimation mode. Shows detected body joints and connections.

Filter Debug

Red markers

When Shape/Template filter debug overlay is enabled, shows matched regions and filter decisions.

Crosshair

Small cross

Center reference point (where your aim is).

Debug View Modes

Mode
Shows

Debug - Crop Only

Only the cropped processing region, at full detail. Best for tuning aim and detection.

Debug - Full Screen

The entire captured frame with overlays. Useful for verifying crop position.

Debug - Weapon Detection ROI

The OCR region with preprocessing visualization. Use when tuning OCR settings.

None

No overlay. Maximum performance. Use during actual gameplay.


Hotkeys Reference

All bindable keys in one place.

Action
Configured On
Description

Aim Key

Aim Page

Activates aim assist while held/toggled.

Flick Key

Flick & Trigger Page

Activates flick assist.

Trigger Key

Flick & Trigger Page

Activates triggerbot while held.

Weapon Class Cycle

Settings → Config → Weapon Class

Cycles to the next weapon class profile.

Start/Stop

Sidebar

Starts or stops the detection loop.

Reset Session

Sidebar

Zeroes all runtime state (EMAs, PID, Kalman, serial lock).


Plugins

The Plugins tab provides a Lua-based extension system for adding custom functionality.

Managing Plugins

Control
Description

Plugin List

Shows all discovered plugins with enable/disable toggles.

Refresh

Re-scans the plugins directory for new files.

Enable/Disable

Toggle individual plugins on or off. State is saved to your config.


Config File Format

MoonLightAI stores settings in JSON configuration files located in the configs/ folder.

Structure

Sections

Section
Contains
Per Weapon Class?

DEFAULT

Global settings (capture, tracking, mouse/HID, delays)

No

AIMBOT

Aim, Flick, RCS, and Humanizer settings

Yes

PRESETS

Saved preset profiles

No

WEAPON_CLASSES

Weapon class definitions and names

No

Key Behaviors

  • Auto-defaults: Missing keys are automatically added with default values on startup. You can safely delete a key from the file and it will be restored.

  • Type validation: Invalid value types are auto-corrected to defaults on startup (e.g., a string in a float field is replaced with the default float).

  • Live reload: Changes made in the UI are saved to the config file immediately.

  • File watcher: External changes to the config file are detected and reloaded automatically.

  • Switching configs: Selecting a different config from the dropdown reloads the entire UI and syncs all runtime values.

Manual Editing

You can edit config files directly with a text editor. Changes are picked up by the file watcher. All values are stored as strings (requirement of the config parser):


Glossary

Term
Definition

Bézier Curve

A mathematical curve defined by control points. Used in MAKU humanization to create smooth, non-linear mouse paths.

Bounding Box

A rectangle drawn around a detected target by the AI model. Defined by X, Y, width, and height.

Confidence

A 0–100% score from the AI model indicating how certain it is that a detection is valid.

CV (Coefficient of Variation)

A statistical measure of speed variability. Low CV = constant speed (robotic). High CV = variable speed (human).

Deadzone

A small region where no adjustments are made. Prevents jitter when already on target.

DirectML

Microsoft's hardware-accelerated machine learning API. Used as the GPU backend for ONNX inference on Windows.

EMA (Exponential Moving Average)

A smoothing technique that gives more weight to recent values. Used for velocity smoothing and signal filtering.

Entropy

A measure of randomness/unpredictability. Higher entropy in mouse movements indicates more human-like behavior.

FOV (Field of View)

The circular search area around the crosshair. Only targets within this radius are considered.

Interpolation

Adding intermediate points between defined steps to create smooth transitions.

Kalman Filter

A mathematical algorithm that predicts future state (position, velocity) from noisy measurements. Used for target prediction.

Keypoint

A specific body joint detected by pose estimation models (e.g., head, neck, shoulder, hip).

Latency

Total delay from screen capture to mouse movement output. Lower is better.

NDI (Network Device Interface)

A protocol for sending video over a local network. Used in dual-PC setups.

ONNX (Open Neural Network Exchange)

A standard format for AI models. Provides broad compatibility across hardware.

OpenCL

A framework for GPU-accelerated computation. Used here for image color conversion.

OpenVINO

Intel's inference toolkit. Optimized for Intel CPUs and integrated GPUs. Also works on AMD CPUs.

Overshoot

When the cursor moves past the target before correcting back. Some amount is natural for humans.

PID

Proportional-Integral-Derivative controller. A feedback loop used in some motion algorithms.

Pose Estimation

An AI technique that detects specific body joints/bones rather than just bounding boxes.

Process Noise (Q)

Kalman filter parameter. Controls expected acceleration/velocity changes. Higher = more responsive to direction changes.

Measurement Noise (R)

Kalman filter parameter. Controls trust in raw detection data. Higher = smoother but slower to react.

ROI (Region of Interest)

A defined rectangular area on screen where OCR or template matching searches for content.

Smoothing

A value that controls how gradually the cursor moves toward the target. Higher = slower/smoother. Lower = faster/snappier.

Weapon Class

A named profile within a config file (e.g., "Rifles," "Snipers") with its own aim, flick, RCS, and humanizer settings.

WindMouse

A humanization algorithm that simulates mouse movement as a physical object affected by gravity and wind forces.


Troubleshooting

Capture Issues

Capture card not detected

  • Verify the device appears in Windows Device Manager under "Cameras" or "Imaging Devices."

  • Try switching between Direct Show and MSMF codecs.

  • Ensure no other application (OBS, Discord) is using the capture device.

  • Check that the correct resolution and format are set.

NDI source not appearing

  • Confirm both PCs are on the same local network.

  • Verify the NDI source is actively broadcasting (check NDI Monitor on the sending PC).

  • Temporarily disable firewalls to test connectivity.

Low capture FPS

  • Enable Crop to reduce the processed area.

  • Lower Capture Resolution if your card supports it.

  • Check Max Capture FPS is set appropriately (not too low).

  • Ensure OpenCL is enabled for GPU-accelerated color conversion.

Detection Issues

No detections appearing

  • Verify a model file is loaded (Settings → Detection/Model).

  • Lower the Confidence threshold (try 30–40% for testing).

  • Check that the correct Model Type is selected (Object Detection vs. Pose Estimation).

  • Ensure the debug view is enabled to see bounding boxes.

Too many false positives

  • Increase Confidence threshold.

  • Enable and configure Filtering (color, shape, or template matching).

  • Use Class Filtering to disable irrelevant class IDs.

Detection FPS is low

  • Enable Async Inference.

  • Reduce crop size.

  • Switch ONNX Provider to gpu if currently on CPU.

  • Reduce ONNX Threads if CPU is overloaded.

  • Use a smaller/faster model file.

Aim Issues

Aim feels "floaty" or slow

  • Decrease Smooth X/Y values.

  • Reduce Extra Smoothing on the Tracking tab.

  • Check that Sensitivity Normalization values match your actual DPI/sens.

  • Verify Sens Multiplier is at 1.0.

Aim is jittery or twitchy

  • Increase Tracking Deadzone.

  • Increase Kalman Measurement Noise (R).

  • Increase Smooth X/Y values.

  • Enable Momentum Tracking in Humanizer.

Aim overshoots targets

  • Increase smoothing values.

  • Reduce Kalman Prediction Responsiveness.

  • Enable Humanizer → Momentum Tracking with higher Decay.

  • Enable Endpoint Settling in Entropy-Aware Humanization.

Config not updating when switching files

  • The dropdown should reload all UI widgets and runtime values automatically.

  • If values seem stale, click Refresh List and reselect the config.

  • Check the console output for error messages during config loading.

Hardware Device Issues

KMBox/MAKCU/Ferrum not responding

  • Verify the correct COM Port is selected.

  • Check that the device appears in Device Manager under "Ports (COM & LPT)."

  • Try increasing Device Delay (start with 5–10 ms).

  • Unplug and reconnect the device.

  • Ensure no other software is using the same COM port.

"Ghosty" or stuttering mouse movement with hardware devices

  • Increase Device Delay incrementally (2–5 ms at a time).

  • Increase the specific Aim/Flick/RCS Delay sliders.

  • Check USB cable quality and port (use USB 2.0 ports for serial devices).

OCR Issues

OCR not reading weapon names

  • Use the Live Preview to verify the ROI is positioned exactly over the weapon text.

  • Adjust preprocessing (Grayscale, Threshold, Contrast) until the text is clearly visible in the preview.

  • Lower the Similarity Threshold to allow fuzzy matching.

  • Verify the correct OCR Language is selected.

Performance Issues

General lag or high CPU usage

  • Enable Crop (single biggest performance improvement).

  • Set Debug Visual to "None" during gameplay.

  • Lower Display Scale and Max FPS for the debug window.

  • Enable Async Inference.

  • Reduce ONNX Threads if the CPU is saturated.

  • Disable OpenCL Early Initialization if startup is slow (does not affect runtime).

Last updated